<template>
  <div>
    <script :id=id type="text/plain"></script>
  </div>
</template>
<script>
  export default {
    name: 'UE',
    data () {
      return {
        editor: null
      }
    },
    model:{
      prop: 'value',
      event: 'change'
    },
    formatter:{
      value: 'value',
      row: 'row',
      index: 'index'
    },
    props: {
      defaultMsg: {
        type: String
      },
      value: {
        type: String
      },
      config: {
        type: Object
      },
      id: {
        type: String
      }
    },
    mounted() {
      const _this = this;
      this.editor = UE.getEditor(this.id, this.config); // 初始化UE
      this.editor.addListener("ready", function () {
        //延时 lkw20190307 添加, 防止页面加载富文本编辑器来不及赋值/或网络延时加载不上
        setTimeout(function () {
          // console.log(_this.editor.setContent, _this.defaultMsg)
          _this.editor.setContent(_this.value); // 确保UE加载完成后，放入内容。
        }, 300)
        
      });
      this.editor.addListener("contentChange",function(){
        _this.$emit('change',_this.getUEContent());
      })
    },
    methods: {
      getUEContent() { // 获取内容方法
        return this.editor.getContent()
      },
      getUEContentTxt() { // 获取纯文本内容方法
        return this.editor.getContentTxt()
      }
    },
    destroyed() {
      this.editor.destroy();
    }
  }
</script>